草庐IT

javascript - 在 GSP 中将数据从 Controller 传递到 JavaScript

全部标签

sql - Rails 中独立于数据库的 SQL 字符串连接

我想在Rails查询中进行数据库端字符串连接,并以独立于数据库的方式进行。SQL-92指定双杠(||)作为连接运算符。不幸的是,MSSQLServer似乎不支持它;它使用+代替。我猜Rails的SQL语法抽象已经解决了特定于数据库的运算符问题。如果它确实存在,我该如何使用它? 最佳答案 我遇到了同样的问题,但从未想出任何内置于Rails中的东西。所以我写了这个小方法。#Symbolsshouldbeusedforfieldnames,everythingelsewillbequotedasastringdefdb_concat(*a

ruby-on-rails - 为什么在 Controller 被子类化时 Rails before_filter 被调用两次?

我在使用Rails2.3.5,我遇到了这个问题:classBaseController[:index]endclassChildController[:index,:show,:other,:actions]end问题是在ChildController上,过滤器之前的:foo被调用了两次。我已经尝试了很多解决这个问题的方法。如果我不在子项中包含:index操作,则永远不会为该操作调用它。我找到的解决方案有效,但我认为它非常难看skip_before_filter:foobefore_filter:foo,:only=>[:index,:show,:other,:actions]有没有更

ruby-on-rails - 从 gem 添加 Rails Controller

我正在开发一个专门用于Rails应用程序的ruby​​gem,我想从我的gem添加一个Controller,以便它可以在Rails应用程序上使用(类似于devise对RegistrationsController、SessionsController所做的)。在gem方面:我试过添加以下内容应用程序/Controller/samples_controller.rbclassSamplesController然后在我的rails路线上将其添加为:match'route'=>'samples#index'或resources:samples很明显我在那里出了点问题,但我不知道是什么?我是否

ruby-on-rails - 为 rails 中的特定 Controller 跳过/禁用 force_ssl

除了message#newController之外,我需要在我的应用程序中的所有路由上强制使用SSL。在config/environments/production.rb中,我有:config.force_ssl=true现在所有路由都重定向到https,现在我想为message#newController禁用它。有谁知道如何为Rails4+应用程序中的特定Controller禁用强制SSL? 最佳答案 根据documentation以下应该有效(但仅适用于rails>5版本):config.ssl_options={redirec

ruby - 如何获得 JavaScript 样式的哈希访问?

我知道ActiveSupport提供了此功能。h=ActiveSupport::OrderedOptions.newh.boy='John'h.girl='Mary'h.boy#=>'John'h.girl#=>'Mary'但是我已经有一个很大的散列,我想使用点表示法访问该散列。这是我尝试过的:large_hash={boy:'John',girl:'Mary'}h=ActiveSupport::OrderedOptions.new(large_hash)h.boy#=>nil那没有用。我怎样才能使这项工作。我正在使用ruby1.9.2更新:抱歉,我应该提到我不能使用openstruc

ruby-on-rails - 工厂女孩在构建/创建时将参数传递给模型定义

模型/message.rbclassMessageattr_reader:bundle_id,:order_id,:order_number,:eventdefinitialize(message)hash=message@bundle_id=hash[:payload][:bundle_id]@order_id=hash[:payload][:order_id]@order_number=hash[:payload][:order_number]@event=hash[:concern]endend规范/模型/message_spec.rbrequire'spec_helper'de

ruby-on-rails - 我的非模型/非 Controller 代码应该放在哪里?

我编写了一个遵循常规目录结构的Rails应用程序(模型代码在模型中,Controller代码在Controller中)。但我现在正在开发一项新功能,为此我编写了一些(我称之为)“服务”代码。新功能是将一些数据导入系统,目前是两个类来进行导入,但可以扩展到更多。我不认为新代码属于模型,因为它不对任何对象建模(它也不直接与任何单个对象相关。我当然不认为它属于Controller,因为它不是表示逻辑。因此,我创建了一个“app/services”目录并将其放在那里。我还创建了一个“test/services”目录,用于放置我的测试。我认为一切都很好,但是当我运行“rake:test”或“au

ruby - 无法在 Ruby : uninitialized constant (NameError) 中将一个类包含到另一个类中

假设我有三个类,每个类都在自己的文件中定义。例如ClassA.rb中的ClassA等...classClassAdefinitializeenddefprintClassAputs"ThisisclassA"endendclassClassBdefinitializeenddefprintClassBputs"ThisisclassB"endendclassClassCdefinitializeenddefbothClassesa=ClassA.newb=ClassB.newa.printClassAb.printClassBendend如您所见,ClassC需要其他两个类才能正常运行

sql - 将每个 SQL 查询记录到 Rails 中的数据库

我想将某些SQL查询rails执行(即CREATE、UPDATE和DELETE)保存到日志文件中因此我需要拦截所有查询,然后可能使用一些正则表达式过滤它们并根据需要记录它们。我应该把这样的东西放在Rails代码的什么地方? 最佳答案 这里是c0r0ner链接的简化版本,以更好地展示它:connection=ActiveRecord::Base.connectionclasse;end#executeoriginalstatementoriginal_exec(sql,*name)endend

ruby-on-rails - 基于当前的托管服务,我应该将哪些数据库与 Ruby on Rails 一起使用?

我一直在寻找托管服务,但我仍然不知道哪种数据库最常见。好像是MySql和PostgreSql。所以,我不确定我的网站会有多少流量和数据(这只是一个项目),但我想做好准备。我曾在Oracle(PL/SQL)的一些项目中工作过,我对MySql有所了解。谢谢!附言。4年后,我主要使用PostgreSQL编写RoR。当我需要简单的应用程序时默认使用SQLite,否则使用PostgreSQL。 最佳答案 Rails的一个原则是你不应该真正关心你使用的是什么数据库:这些都是为你抽象的。所以我会说选择总体上最好的托管服务提供商,并相信他们会选择一